
using System;
using System.Collections;

namespace FutureOpen.Core
{
	#region Cat

	/// <summary>
	/// Cat string for NHibernate mapped table 'cat'.
	/// </summary>
    [Serializable]
	public class Cat
		{
		#region Member Variables
		
		protected int _cat_id;
		protected string _cat_name;
		protected short _cat_type;
		protected int _cat_parent;

		#endregion

		#region Constructors

		public Cat() { }

		public Cat( string cat_name, short cat_type, int cat_parent )
		{
			this._cat_name = cat_name;
			this._cat_type = cat_type;
			this._cat_parent = cat_parent;
		}

		#endregion

		#region Public Properties

		public virtual int Cat_id
		{
			get {return _cat_id;}
			set {_cat_id = value;}
		}

		public virtual string Cat_name
		{
			get { return _cat_name; }
			set
			{
				if ( value != null && value.Length > 300)
					throw new ArgumentOutOfRangeException("Invalid value for Cat_name", value, value.ToString());
				_cat_name = value;
			}
		}

		public virtual short Cat_type
		{
			get { return _cat_type; }
			set { _cat_type = value; }
		}

		public virtual int Cat_parent
		{
			get { return _cat_parent; }
			set { _cat_parent = value; }
		}

        
		#endregion
		
        
	}

	#endregion
}
